home *** CD-ROM | disk | FTP | other *** search
/ Visual Basic Source Code / Visual Basic Source Code.iso / vbsource / gradat1a / form1.frm (.txt) next >
Encoding:
Visual Basic Form  |  1999-10-03  |  23.9 KB  |  683 lines

  1. VERSION 5.00
  2. Object = "{F9043C88-F6F2-101A-A3C9-08002B2F49FB}#1.1#0"; "COMDLG32.OCX"
  3. Begin VB.Form Form1 
  4.    BorderStyle     =   1  'Fixed Single
  5.    Caption         =   "Gradation 2.0 (Second Edition) - I wish this program can help you."
  6.    ClientHeight    =   8025
  7.    ClientLeft      =   3675
  8.    ClientTop       =   1290
  9.    ClientWidth     =   7125
  10.    ClipControls    =   0   'False
  11.    Icon            =   "Form1.frx":0000
  12.    LinkTopic       =   "Form1"
  13.    MaxButton       =   0   'False
  14.    ScaleHeight     =   8025
  15.    ScaleWidth      =   7125
  16.    Begin VB.Frame Frame4 
  17.       Caption         =   "Resolution"
  18.       Height          =   1335
  19.       Left            =   4440
  20.       TabIndex        =   28
  21.       Top             =   6120
  22.       Width           =   2655
  23.       Begin VB.HScrollBar ResCircular2 
  24.          Height          =   255
  25.          Left            =   840
  26.          Max             =   40
  27.          Min             =   21
  28.          TabIndex        =   38
  29.          Top             =   720
  30.          Value           =   21
  31.          Width           =   1695
  32.       End
  33.       Begin VB.HScrollBar ResCircular 
  34.          Height          =   255
  35.          Left            =   840
  36.          Max             =   15
  37.          Min             =   2
  38.          TabIndex        =   30
  39.          Top             =   480
  40.          Value           =   2
  41.          Width           =   1695
  42.       End
  43.       Begin VB.HScrollBar ResLinear 
  44.          Height          =   255
  45.          Left            =   840
  46.          Max             =   52
  47.          Min             =   23
  48.          TabIndex        =   29
  49.          Top             =   240
  50.          Value           =   23
  51.          Width           =   1695
  52.       End
  53.       Begin VB.Label Label7 
  54.          Caption         =   "Circular2"
  55.          Height          =   255
  56.          Left            =   120
  57.          TabIndex        =   37
  58.          Top             =   720
  59.          Width           =   855
  60.       End
  61.       Begin VB.Label Label5 
  62.          Caption         =   "Circular"
  63.          Height          =   255
  64.          Left            =   120
  65.          TabIndex        =   32
  66.          Top             =   480
  67.          Width           =   615
  68.       End
  69.       Begin VB.Label Label4 
  70.          Caption         =   "Linear"
  71.          Height          =   255
  72.          Left            =   120
  73.          TabIndex        =   31
  74.          Top             =   240
  75.          Width           =   1455
  76.       End
  77.       Begin VB.Label Label6 
  78.          Caption         =   "High                       Low"
  79.          Height          =   195
  80.          Left            =   840
  81.          TabIndex        =   33
  82.          Top             =   960
  83.          Width           =   1695
  84.       End
  85.    End
  86.    Begin VB.PictureBox Picture1 
  87.       Height          =   135
  88.       Left            =   5160
  89.       ScaleHeight     =   75
  90.       ScaleWidth      =   1875
  91.       TabIndex        =   26
  92.       Top             =   7800
  93.       Width           =   1935
  94.       Begin VB.Shape Shape1 
  95.          BorderColor     =   &H00FF0000&
  96.          FillColor       =   &H00FF0000&
  97.          FillStyle       =   0  'Solid
  98.          Height          =   375
  99.          Left            =   0
  100.          Top             =   0
  101.          Visible         =   0   'False
  102.          Width           =   15
  103.       End
  104.    End
  105.    Begin VB.Frame Frame3 
  106.       Caption         =   "Style"
  107.       Height          =   1335
  108.       Left            =   2760
  109.       TabIndex        =   21
  110.       Top             =   6120
  111.       Width           =   1575
  112.       Begin VB.OptionButton OptionCircular2 
  113.          Caption         =   "Circular 2"
  114.          Height          =   255
  115.          Left            =   120
  116.          TabIndex        =   36
  117.          Top             =   720
  118.          Width           =   1335
  119.       End
  120.       Begin VB.OptionButton OptionBox2 
  121.          Caption         =   "Box 2"
  122.          Height          =   255
  123.          Left            =   720
  124.          TabIndex        =   35
  125.          Top             =   960
  126.          Width           =   735
  127.       End
  128.       Begin VB.OptionButton OptionBox 
  129.          Caption         =   "Box"
  130.          Height          =   255
  131.          Left            =   120
  132.          TabIndex        =   34
  133.          Top             =   960
  134.          Width           =   975
  135.       End
  136.       Begin VB.OptionButton OptionCircular 
  137.          Caption         =   "Circular"
  138.          Height          =   255
  139.          Left            =   120
  140.          TabIndex        =   23
  141.          Top             =   480
  142.          Width           =   975
  143.       End
  144.       Begin VB.OptionButton OptionLinear 
  145.          Caption         =   "Linear"
  146.          Height          =   255
  147.          Left            =   120
  148.          TabIndex        =   22
  149.          Top             =   240
  150.          Value           =   -1  'True
  151.          Width           =   975
  152.       End
  153.    End
  154.    Begin VB.Timer Timer1 
  155.       Interval        =   50
  156.       Left            =   6120
  157.       Top             =   7080
  158.    End
  159.    Begin VB.Frame Frame2 
  160.       Caption         =   "Sample ( Vertical Style )"
  161.       Height          =   1335
  162.       Left            =   120
  163.       TabIndex        =   19
  164.       Top             =   6120
  165.       Width           =   2535
  166.       Begin VB.PictureBox Sample 
  167.          AutoRedraw      =   -1  'True
  168.          ClipControls    =   0   'False
  169.          Height          =   975
  170.          Left            =   120
  171.          MousePointer    =   2  'Cross
  172.          ScaleHeight     =   915
  173.          ScaleWidth      =   2235
  174.          TabIndex        =   20
  175.          Top             =   240
  176.          Width           =   2295
  177.       End
  178.    End
  179.    Begin VB.Frame Frame1 
  180.       Caption         =   "Second Color"
  181.       Height          =   1335
  182.       Index           =   1
  183.       Left            =   0
  184.       TabIndex        =   10
  185.       Top             =   4680
  186.       Width           =   7095
  187.       Begin VB.HScrollBar SecondScroll 
  188.          Height          =   255
  189.          Index           =   0
  190.          Left            =   120
  191.          Max             =   255
  192.          TabIndex        =   15
  193.          Top             =   240
  194.          Width           =   3495
  195.       End
  196.       Begin VB.CommandButton SecondDialog 
  197.          Caption         =   "Dialog Box"
  198.          Height          =   975
  199.          Left            =   6000
  200.          TabIndex        =   14
  201.          Top             =   240
  202.          Width           =   975
  203.       End
  204.       Begin VB.PictureBox SecondSample 
  205.          AutoRedraw      =   -1  'True
  206.          BackColor       =   &H00000000&
  207.          Height          =   975
  208.          Left            =   4920
  209.          ScaleHeight     =   915
  210.          ScaleWidth      =   915
  211.          TabIndex        =   13
  212.          Top             =   240
  213.          Width           =   975
  214.       End
  215.       Begin VB.HScrollBar SecondScroll 
  216.          Height          =   255
  217.          Index           =   1
  218.          Left            =   120
  219.          Max             =   255
  220.          TabIndex        =   12
  221.          Top             =   600
  222.          Width           =   3495
  223.       End
  224.       Begin VB.HScrollBar SecondScroll 
  225.          Height          =   255
  226.          Index           =   2
  227.          Left            =   120
  228.          Max             =   255
  229.          TabIndex        =   11
  230.          Top             =   960
  231.          Width           =   3495
  232.       End
  233.       Begin VB.Label SecondLabel 
  234.          Caption         =   "Red : 0"
  235.          Height          =   255
  236.          Index           =   0
  237.          Left            =   3720
  238.          TabIndex        =   18
  239.          Top             =   240
  240.          Width           =   1095
  241.       End
  242.       Begin VB.Label SecondLabel 
  243.          Caption         =   "Green : 0"
  244.          Height          =   255
  245.          Index           =   1
  246.          Left            =   3720
  247.          TabIndex        =   17
  248.          Top             =   600
  249.          Width           =   1095
  250.       End
  251.       Begin VB.Label SecondLabel 
  252.          Caption         =   "Blue : 0"
  253.          Height          =   255
  254.          Index           =   2
  255.          Left            =   3720
  256.          TabIndex        =   16
  257.          Top             =   960
  258.          Width           =   1095
  259.       End
  260.    End
  261.    Begin VB.Frame Frame1 
  262.       Caption         =   "First Color"
  263.       Height          =   1335
  264.       Index           =   0
  265.       Left            =   0
  266.       TabIndex        =   1
  267.       Top             =   3240
  268.       Width           =   7095
  269.       Begin VB.HScrollBar FirstScroll 
  270.          Height          =   255
  271.          Index           =   2
  272.          Left            =   120
  273.          Max             =   255
  274.          TabIndex        =   9
  275.          Top             =   960
  276.          Value           =   255
  277.          Width           =   3495
  278.       End
  279.       Begin VB.HScrollBar FirstScroll 
  280.          Height          =   255
  281.          Index           =   1
  282.          Left            =   120
  283.          Max             =   255
  284.          TabIndex        =   8
  285.          Top             =   600
  286.          Value           =   255
  287.          Width           =   3495
  288.       End
  289.       Begin VB.PictureBox FirstSample 
  290.          AutoRedraw      =   -1  'True
  291.          BackColor       =   &H00FFFFFF&
  292.          Height          =   975
  293.          Left            =   4920
  294.          ScaleHeight     =   915
  295.          ScaleWidth      =   915
  296.          TabIndex        =   7
  297.          Top             =   240
  298.          Width           =   975
  299.       End
  300.       Begin VB.CommandButton FirstDialog 
  301.          Caption         =   "Dialog Box"
  302.          Height          =   975
  303.          Left            =   6000
  304.          TabIndex        =   6
  305.          Top             =   240
  306.          Width           =   975
  307.       End
  308.       Begin VB.HScrollBar FirstScroll 
  309.          Height          =   255
  310.          Index           =   0
  311.          Left            =   120
  312.          Max             =   255
  313.          TabIndex        =   2
  314.          Top             =   240
  315.          Value           =   255
  316.          Width           =   3495
  317.       End
  318.       Begin VB.Label FirstLabel 
  319.          Caption         =   "Blue : 255"
  320.          Height          =   255
  321.          Index           =   2
  322.          Left            =   3720
  323.          TabIndex        =   5
  324.          Top             =   960
  325.          Width           =   1095
  326.       End
  327.       Begin VB.Label FirstLabel 
  328.          Caption         =   "Green : 255"
  329.          Height          =   255
  330.          Index           =   1
  331.          Left            =   3720
  332.          TabIndex        =   4
  333.          Top             =   600
  334.          Width           =   1095
  335.       End
  336.       Begin VB.Label FirstLabel 
  337.          Caption         =   "Red : 255"
  338.          Height          =   255
  339.          Index           =   0
  340.          Left            =   3720
  341.          TabIndex        =   3
  342.          Top             =   240
  343.          Width           =   1095
  344.       End
  345.    End
  346.    Begin VB.PictureBox MainP 
  347.       AutoRedraw      =   -1  'True
  348.       BackColor       =   &H80000009&
  349.       ClipControls    =   0   'False
  350.       Height          =   3135
  351.       Left            =   0
  352.       MousePointer    =   2  'Cross
  353.       ScaleHeight     =   3075
  354.       ScaleWidth      =   7035
  355.       TabIndex        =   0
  356.       Top             =   0
  357.       Width           =   7095
  358.       Begin VB.Line Line1 
  359.          BorderStyle     =   3  'Dot
  360.          DrawMode        =   6  'Mask Pen Not
  361.          Visible         =   0   'False
  362.          X1              =   1080
  363.          X2              =   4680
  364.          Y1              =   2280
  365.          Y2              =   1680
  366.       End
  367.    End
  368.    Begin MSComDlg.CommonDialog DialogBox 
  369.       Left            =   6600
  370.       Top             =   6960
  371.       _ExtentX        =   847
  372.       _ExtentY        =   847
  373.       _Version        =   327680
  374.       CancelError     =   -1  'True
  375.    End
  376.    Begin VB.Label Label3 
  377.       Caption         =   "Status Bar ..."
  378.       Height          =   255
  379.       Left            =   5160
  380.       TabIndex        =   27
  381.       Top             =   7560
  382.       Width           =   1935
  383.    End
  384.    Begin VB.Label Label2 
  385.       Caption         =   "Also you can choose the second color by Right Click"
  386.       Height          =   255
  387.       Left            =   240
  388.       TabIndex        =   25
  389.       Top             =   7800
  390.       Width           =   4815
  391.    End
  392.    Begin VB.Label Label1 
  393.       Caption         =   "*** You can choose the first color in this Sample Box by Left Click"
  394.       Height          =   255
  395.       Left            =   120
  396.       TabIndex        =   24
  397.       Top             =   7560
  398.       Width           =   4815
  399.    End
  400.    Begin VB.Menu Menu 
  401.       Caption         =   "&Menu"
  402.       Begin VB.Menu Intro 
  403.          Caption         =   "&Introducing..."
  404.          Shortcut        =   {F2}
  405.       End
  406.       Begin VB.Menu ChangeColors 
  407.          Caption         =   "Change First / Second Color"
  408.       End
  409.       Begin VB.Menu Separator 
  410.          Caption         =   "-"
  411.       End
  412.       Begin VB.Menu Exit 
  413.          Caption         =   "E&xit"
  414.          Shortcut        =   ^X
  415.       End
  416.    End
  417. Attribute VB_Name = "Form1"
  418. Attribute VB_GlobalNameSpace = False
  419. Attribute VB_Creatable = False
  420. Attribute VB_PredeclaredId = True
  421. Attribute VB_Exposed = False
  422. '*******************************************
  423. '*                                         *
  424. '*    Gradation V2.0(?) by Jongmin Baek    *
  425. '*                                         *
  426. '*    Used Program : VB 5.0                *
  427. '*    Date : October 3, 99                 *
  428. '*    !! Maybe the following code is       *
  429. '*    not so good. But I did my best       *
  430. '*    though I'm 13 years old and not so   *
  431. '*    good at programming.                 *
  432. '*                                         *
  433. '*******************************************
  434. Dim MainD As Long
  435. Dim changed As Boolean
  436. Dim Xend, Yend As Integer
  437. Dim Xstart, Ystart As Integer
  438. Dim ColorName(2) As String
  439. Dim SetIndex As Integer
  440. Dim SecondColor As Long
  441. Dim FirstColor As Long
  442. Private Sub ChangeColors_Click()
  443. a = FirstScroll(0).Value: FirstScroll(0).Value = SecondScroll(0).Value: SecondScroll(0).Value = a
  444. b = FirstScroll(1).Value: FirstScroll(1).Value = SecondScroll(1).Value: SecondScroll(1).Value = b
  445. c = FirstScroll(2).Value: FirstScroll(2).Value = SecondScroll(2).Value: SecondScroll(2).Value = c
  446. End Sub
  447. Private Sub Exit_Click()
  448. End Sub
  449. Private Sub FirstDialog_Click()
  450. On Error GoTo 1000
  451. DialogBox.ShowColor
  452. FT = DialogBox.Color
  453. FirstColor = FT
  454. FirstScroll(0).Value = FT - Int(FT / 256) * 256: FT = Int(FT / 256)
  455. FirstScroll(1).Value = FT - Int(FT / 256) * 256: FT = Int(FT / 256)
  456. FirstScroll(2).Value = FT
  457. 1000 Exit Sub
  458. End Sub
  459. Private Sub FirstScroll_Change(Index As Integer)
  460. SetIndex = Index
  461. FirstChange
  462. End Sub
  463. Private Sub FirstScroll_Scroll(Index As Integer)
  464. SetIndex = Index
  465. FirstChange
  466. End Sub
  467. Private Sub FirstChange()
  468. FirstLabel(SetIndex).Caption = ColorName(SetIndex) + " : " + RTrim$(Str$(FirstScroll(SetIndex).Value))
  469. FirstColor = RGB(FirstScroll(0).Value, FirstScroll(1).Value, FirstScroll(2).Value)
  470. FirstSample.BackColor = FirstColor
  471. changed = True
  472. End Sub
  473. Private Sub Form_Load()
  474. FirstColor = RGB(255, 255, 255)
  475. ColorName(0) = "Red": ColorName(1) = "Green": ColorName(2) = "Blue"
  476. MainD = Sqr(MainP.ScaleHeight ^ 2 + MainP.ScaleWidth ^ 2)
  477. SampleGradient
  478. End Sub
  479. Private Sub Intro_Click()
  480. Form1.Enabled = False
  481. Form3.Show
  482. End Sub
  483. Private Sub MainP_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
  484. If Button = 1 Then
  485. Xstart = X: Ystart = Y
  486. Xend = X: Yend = Y
  487. Line1.Visible = True: Line1.X1 = X: Line1.Y1 = Y
  488. Line1.X2 = X: Line1.Y2 = Y
  489. MainP.Cls
  490. End If
  491. End Sub
  492. Private Sub MainP_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
  493. If Button = 1 Then
  494. Line1.X2 = X: Line1.Y2 = Y
  495. Xend = X: Yend = Y
  496. End If
  497. End Sub
  498. Private Sub MainP_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
  499. Line1.Visible = False
  500. Shape1.Visible = True
  501. Xend = X: Yend = Y
  502. If OptionLinear = True Then
  503. 'Linear Gradation is here!!!
  504.     sins = Sqr((Xstart - Xend) ^ 2 + (Ystart - Yend) ^ 2)
  505.     If sins = 0 Then MainP.BackColor = FirstColor: Exit Sub
  506.     ExpYstart = Ystart + (Ystart - Yend) * MainD / sins
  507.     ExpXstart = Xstart + (Xstart - Xend) * MainD / sins
  508.     ExpYend = Yend - (Ystart - Yend) * MainD / sins
  509.     ExpXend = Xend - (Xstart - Xend) * MainD / sins
  510.     news = Sqr((ExpXstart - ExpXend) ^ 2 + (ExpYstart - ExpYend) ^ 2)
  511.     If news <> Int(news) Then news = Int(news) + 1
  512.     StepG = ResLinear.Value / 10     'It's the speed. The more it is, the faster the speed is. But...
  513.     PlusX = (ExpXend - ExpXstart) / news
  514.     PlusY = (ExpYend - ExpYstart) / news
  515.     sta = 0
  516.     MainP.AutoRedraw = False
  517.     For i = 0 To news Step StepG
  518.         Shape1.Width = i / news * Picture1.ScaleWidth
  519.         NowX = ExpXstart + PlusX * i
  520.         NowY = ExpYstart + PlusY * i
  521.         If ((NowX > Xstart Xor NowX > Xend) Or NowX = Xstart Or NowX = Xend) And ((NowY >= Ystart Xor NowY >= Yend) Or NowY = Ystart Or NowY = Yend) Then sta = 1 Else If sta = 1 Then sta = 2
  522.         If sta = 0 Then Colors = FirstColor
  523.         If sta = 2 Then Colors = SecondColor
  524.         If sta = 1 Then
  525.            XX = Xend - Xstart: XT = NowX - Xstart
  526.            If XX = 0 Then XX = Yend - Ystart: XT = NowY - Ystart
  527.            red = (XT) / (XX) * (SecondScroll(0).Value - FirstScroll(0).Value) + FirstScroll(0).Value
  528.            green = (XT) / (XX) * (SecondScroll(1).Value - FirstScroll(1).Value) + FirstScroll(1).Value
  529.            blue = (XT) / (XX) * (SecondScroll(2).Value - FirstScroll(2).Value) + FirstScroll(2).Value
  530.            Colors = RGB(red, green, blue)
  531.         End If
  532.         MainP.Line (NowX - PlusY * MainD, NowY + PlusX * MainD)-(NowX + PlusY * MainD, NowY - PlusX * MainD), Colors
  533.         MainP.Line (NowX - PlusY * MainD + 1, NowY + PlusX * MainD)-(NowX + PlusY * MainD + 1, NowY - PlusX * MainD), Colors
  534.         MainP.Line (NowX - PlusY * MainD + 2, NowY + PlusX * MainD)-(NowX + PlusY * MainD + 2, NowY - PlusX * MainD), Colors
  535.     Next i
  536. End If
  537. If OptionCircular = True Then
  538. 'Circular Gradation is here!!!
  539.     Max = 0
  540.     StartToEnd = Sqr((Xstart - Xend) ^ 2 + (Ystart - Yend) ^ 2)
  541.     MainP.AutoRedraw = False
  542.     For i = 0 To 1
  543.         For j = 0 To 1
  544.             distance = Sqr((Ystart - MainP.ScaleHeight * i) ^ 2 + (Xstart - MainP.ScaleWidth * j) ^ 2)
  545.             If distance > Max Then Max = distance
  546.         Next j
  547.     Next i
  548.     StepG = ResCircular.Value / 100
  549.     For i = 0 To 360 Step StepG
  550.     Shape1.Width = i / 360 * Picture1.ScaleWidth
  551.        If i > StartToEnd Then
  552.             Colors = SecondColor
  553.        Else
  554.            red = i / 360 * (SecondScroll(0).Value - FirstScroll(0).Value) + FirstScroll(0).Value
  555.            green = i / 360 * (SecondScroll(1).Value - FirstScroll(1).Value) + FirstScroll(1).Value
  556.            blue = i / 360 * (SecondScroll(2).Value - FirstScroll(2).Value) + FirstScroll(2).Value
  557.            Colors = RGB(red, green, blue)
  558.        End If
  559.        X2 = Xstart + Sin(i * 3.141592654 / 180) * Max
  560.        Y2 = Ystart + Cos(i * 3.141592654 / 180) * Max
  561.        MainP.Line (Xstart, Ystart)-(X2, Y2), Colors
  562.        MainP.Line (Xstart, Ystart)-(X2 + 1, Y2), Colors
  563.        MainP.Line (Xstart, Ystart)-(X2 + 2, Y2), Colors
  564.     Next i
  565. End If
  566. If OptionBox.Value = True Or OptionBox2.Value = True Then
  567.     'Box Gradation Code is here!!!
  568.     MainP.AutoRedraw = False
  569.     MainP.BackColor = IIf(OptionBox.Value = False, FirstColor, SecondColor)
  570.     T1 = Xstart - Abs(Xend - Xstart): T2 = Xstart + Abs(Xend - Xstart)
  571.     R1 = Ystart - Abs(Yend - Ystart): R2 = Ystart + Abs(Yend - Ystart)
  572.     If T2 - T1 > R2 - R1 Then O = R2 - R1 Else O = T2 - T1
  573.     StepG = 1: H = O / 10
  574.     If OptionBox2.Value = True Then
  575.         For i = 0 To H Step StepG
  576.             red = i / H * (FirstScroll(0).Value - SecondScroll(0).Value) + SecondScroll(0).Value
  577.             green = i / H * (FirstScroll(1).Value - SecondScroll(1).Value) + SecondScroll(1).Value
  578.             blue = i / H * (FirstScroll(2).Value - SecondScroll(2).Value) + SecondScroll(2).Value
  579.             Colors = RGB(red, green, blue)
  580.             X1 = T1 + i: X2 = T2 - i: Y1 = R1 + i: Y2 = R2 - i
  581.             If X1 > X2 Then X1 = (X1 + X2) / 2: X2 = X1
  582.             If Y1 > Y2 Then Y1 = (Y1 + Y2) / 2: Y2 = Y1
  583.             MainP.Line (T1 - i, R1 - i)-(T2 + i, R2 + i), Colors, B
  584.         Next i
  585.     End If
  586.     StepG = 1: H = O * 2 / 5
  587.     For i = 0 To H Step StepG
  588.     Shape1.Width = i / H * Picture1.ScaleWidth
  589.         red = i / H * (FirstScroll(0).Value - SecondScroll(0).Value) + SecondScroll(0).Value
  590.         green = i / H * (FirstScroll(1).Value - SecondScroll(1).Value) + SecondScroll(1).Value
  591.         blue = i / H * (FirstScroll(2).Value - SecondScroll(2).Value) + SecondScroll(2).Value
  592.         Colors = RGB(red, green, blue)
  593.         X1 = T1 + i: X2 = T2 - i: Y1 = R1 + i: Y2 = R2 - i
  594.         If X1 > X2 Then X1 = (X1 + X2) / 2: X2 = X1
  595.         If Y1 > Y2 Then Y1 = (Y1 + Y2) / 2: Y2 = Y1
  596.         MainP.Line (T1 + i, R1 + i)-(T2 - i, R2 - i), Colors, B
  597.     Next i
  598.     X1 = T1 + i: X2 = T2 - i: Y1 = R1 + i: Y2 = R2 - i
  599.     If X1 > X2 Then X1 = (X1 + X2) / 2: X2 = X1
  600.     If Y1 > Y2 Then Y1 = (Y1 + Y2) / 2: Y2 = Y1
  601.     MainP.Line (T1 + i, R1 + i)-(T2 - i, R2 - i), Colors, BF
  602. End If
  603. If OptionCircular2.Value = True Then
  604.     'Here is OptionCircular2 Code!!!
  605.     MainP.AutoRedraw = False
  606.     STE = Sqr((Xstart - Xend) ^ 2 + (Ystart - Yend) ^ 2)
  607.     StepG = ResCircular2.Value / 10
  608.     MainP.BackColor = SecondColor
  609.     For i = 0 To STE Step StepG
  610.         Shape1.Width = i / STE * Picture1.ScaleWidth
  611.         red = i / STE * (SecondScroll(0).Value - FirstScroll(0).Value) + FirstScroll(0).Value
  612.         green = i / STE * (SecondScroll(1).Value - FirstScroll(1).Value) + FirstScroll(1).Value
  613.         blue = i / STE * (SecondScroll(2).Value - FirstScroll(2).Value) + FirstScroll(2).Value
  614.         Colors = RGB(red, green, blue)
  615.         MainP.Circle (Xstart, Ystart), i, RGB(red, green, blue)
  616.         MainP.Circle (Xstart + 1, Ystart), i, RGB(red, green, blue)
  617.         MainP.Circle (Xstart - 1, Ystart), i, RGB(red, green, blue)
  618.     Next i
  619. End If
  620. MainP.AutoRedraw = True
  621. Shape1.Visible = False
  622. End Sub
  623. Private Sub Sample_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
  624. Colors = Sample.Point(X, Y)
  625. MM = Colors
  626. value1 = Colors - Int(Colors / 256) * 256: Colors = Int(Colors / 256)
  627. value2 = Colors - Int(Colors / 256) * 256: Colors = Int(Colors / 256)
  628. value3 = Colors
  629. If Button = 1 Then
  630.     FirstScroll(0).Value = value1
  631.     FirstScroll(1).Value = value2
  632.     FirstScroll(2).Value = value3
  633.     If Button = 2 Then
  634.     SecondScroll(0).Value = value1
  635.     SecondScroll(1).Value = value2
  636.     SecondScroll(2).Value = value3
  637.     End If
  638. End If
  639. End Sub
  640. Private Sub SecondDialog_Click()
  641. On Error GoTo 1000
  642. DialogBox.ShowColor
  643. ST = DialogBox.Color
  644. SecondColor = ST
  645. SecondScroll(0).Value = ST - Int(ST / 256) * 256: ST = Int(ST / 256)
  646. SecondScroll(1).Value = ST - Int(ST / 256) * 256: ST = Int(ST / 256)
  647. SecondScroll(2).Value = ST
  648. 1000 Exit Sub
  649. End Sub
  650. Private Sub SecondScroll_Change(Index As Integer)
  651. SetIndex = Index
  652. SecondChange
  653. End Sub
  654. Private Sub SecondScroll_Scroll(Index As Integer)
  655. SetIndex = Index
  656. SecondChange
  657. End Sub
  658. Private Sub SecondChange()
  659. SecondLabel(SetIndex) = ColorName(SetIndex) + " : " + RTrim$(Str$(SecondScroll(SetIndex).Value))
  660. SecondColor = RGB(SecondScroll(0).Value, SecondScroll(1).Value, SecondScroll(2).Value)
  661. SecondSample.BackColor = SecondColor
  662. changed = True
  663. End Sub
  664. Private Sub SampleGradient()
  665. v1 = FirstScroll(0).Value
  666. v2 = FirstScroll(1).Value
  667. v3 = FirstScroll(2).Value
  668. e1 = SecondScroll(0).Value
  669. e2 = SecondScroll(1).Value
  670. e3 = SecondScroll(2).Value
  671. g = 10
  672. For i = 0 To Sample.ScaleWidth Step g
  673. T1 = v1 + (e1 - v1) / Sample.ScaleWidth * i
  674. T2 = v2 + (e2 - v2) / Sample.ScaleWidth * i
  675. t3 = v3 + (e3 - v3) / Sample.ScaleWidth * i
  676. 10 Sample.Line (i, 0)-(i + g - 1, Sample.ScaleHeight), RGB(T1, T2, t3), BF
  677. Next i
  678. changed = False
  679. End Sub
  680. Private Sub Timer1_Timer()
  681. If changed = True Then SampleGradient
  682. End Sub
  683.